Many conventional accounting software applications offer features to record accounting transactions, balance a bank statement, invoice customers, pay vendors, payroll, budgeting, financial statements, and many other related tasks. With estimates of 20-25 million small businesses in the U.S., there is always a large demand for other features or tasks not offered by the conventional accounting software applications. Customers may use conventional accounting software applications for certain business applications and other software applications or services for other tasks.
For example, a user may use accounting software application A for accounting and Service B for payroll because the user wants payroll to be secured and off-site.
In another example, a user may use accounting software application A for accounting and software application C for invoicing customers
As a result there is a consistent demand to transfer data to and from the accounting software applications. This data can be grouped into two types: (1) lists— a static list of vendors, customers, accounts that changes relatively seldom; and (2) transactions— daily accounting transactions like paying bills, invoicing customers, etc.
If a user is using accounting software application A and another software application B to run a business, it is likely the user may be required to transfer transactions between the two software packages regularly. Lists may need to be updated, but much less often.
Conventionally, some accounting software applications have provided a method of formatting data in a file for the purpose of importing data (both transactions and lists) into the accounting software application.
Many of these file formats are relatively difficult to use and have not been updated since the software application's initial release. In these cases, since these file formats have been the only methods to import data into the conventional accounting software applications, third party software companies have had to deal with it by providing users with the ability to create the formatted files.
For example, a payroll company may allow its customers to download a formatted file containing payroll transactions for the purpose of importing to a specific accounting software application. The customer's objective is to have all financial transactions in the accounting software application in order to have accurate financial statements.
Banks may allow customers to download banking transactions in a formatted file to import into the accounting software application.
A user may adopt the accounting software application in the middle of the year. The user wishes to have all their lists and transactions from earlier in the year, from their prior software, transferred into the newly chosen accounting software application in order to have a complete year in the newly chosen accounting software application. The user may need to find a way to create a formatted file out of their prior software.
Another issue that arises is when an existing accounting software application is re-vamped such that the formatted files associated with the pre-re-vamped accounting software application are no longer compatible for importing. This can cause a negative impact to existing users who switch over to the new software application but are using applications or services which only produce the old formatted files and do not produce the formatted files compatible for importing.
In a further situation, as illustrated in FIG. 4, a user may adopt a new accounting software application after seven months into the fiscal year and want to combine the financial data from the old software application and the financial data from the new software application into a single file to facilitate the preparation of tax returns, end of year financial statements, etc. The user may need to find a way to create a single formatted file from the two software application sources.
Thus, it is desirable to provide a solution that bridges the production of previous generation formatted files with the new format constraints for import compatibility.